
//
//  UIImage+Extensions.swift
//  仿微博
//
//  Created by apple on 2016/12/27.
//  Copyright © 2016年 apple. All rights reserved.
//

import UIKit
extension UIImage {


    func  cz_avatarImage(size: CGSize?, backColor: UIColor = UIColor.white, lineColor: UIColor = UIColor.lightGray) -> UIImage? {
    
        var siza = size
        if siza == nil {
        
        siza = self.size
        }
    
        let rect = CGRect(origin: CGPoint(), size: size!)
        
        //  1.图像的上下文 - 内存中开辟一个地址，跟屏幕无关
        /*
         参数:
         
         1.size:   绘图的尺寸
         2.不透明:  false(透明)/true(不透明)
         3.scale:  屏幕的分辨率 ,默认是1.0 图像质量不好的 ,可以指定 0, 会选择当前设备的屏幕分辨率
         
         */
        UIGraphicsBeginImageContextWithOptions(rect.size, true, 0)
        //0> 背景填充
        backColor.setFill()
        UIRectFill(rect)
        
        let path = UIBezierPath(ovalIn: rect)
         path.addClip()
        
        
         draw(in: rect)
        //1>实例 化 一个人圆形的路径
        let ovalpath = UIBezierPath(ovalIn: rect)
        //2>进行路径裁切 - 后续的绘图，
       
        //3> 绘制内切 的圆形
        ovalpath.lineWidth = 2
       lineColor.setStroke()
        
        ovalpath.stroke()
        
        
        // 2.绘图 drawInRect 就是在指定区域内拉伸屏幕
      
        // 3.取得结果
        let result = UIGraphicsGetImageFromCurrentImageContext()
        // 4.关闭上下文
        UIGraphicsEndImageContext()
        // 5.返回结果
        return result
        

    
    
    }






}
